/*
 * Copyright (C) 2021 Realtek Semiconductor Corp.
 * All Rights Reserved.
 *
 * This program is the proprietary software of Realtek Semiconductor
 * Corporation and/or its licensors, and only be used, duplicated,
 * modified or distributed under the authorized license from Realtek.
 *
 * ANY USE OF THE SOFTWARE OTHER THAN AS AUTHORIZED UNDER
 * THIS LICENSE OR COPYRIGHT LAW IS PROHIBITED.
 *
 * Purpose : Definition of ME attribute: Energy consumption performance monitoring history data (343)
 *
 * Feature : The file includes the following modules and sub-modules
 *           (1) ME attribute: Energy consumption performance monitoring history data (343)
 */

#ifndef __MIB_ENERGY_CONSUMPTION_PM_HISTORY_DATA_TABLE_H__
#define __MIB_ENERGY_CONSUMPTION_PM_HISTORY_DATA_TABLE_H__


/* Table EthPmHistoryData attribute index */
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_ATTR_NUM (7)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_ENTITY_ID_INDEX ((MIB_ATTR_INDEX)1)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_INTERVAL_END_TIME_INDEX ((MIB_ATTR_INDEX)2)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_THRESHOLD_ID_INDEX ((MIB_ATTR_INDEX)3)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_DOZE_TIME_INDEX ((MIB_ATTR_INDEX)4)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_CYCLIC_SLEEP_TIME_INDEX ((MIB_ATTR_INDEX)5)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_WATCHFUL_SLEEP_TIME_INDEX ((MIB_ATTR_INDEX)6)
#define MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_ENERGY_CONSUMED_INDEX ((MIB_ATTR_INDEX)7)

/* Table ENERGY_CONSUMPTION_PM_HISTORY_DATA attribute len, only string attrubutes have length definition */

// Table ENERGY_CONSUMPTION_PM_HISTORY_DATA entry stucture
typedef struct {
    UINT16   EntityId;
    UINT8    IntervalEndTime;
    UINT16   ThresholdID;
    UINT32   DozeTime;
    UINT32   CyclicSleepTime;
    UINT32   WatchfulSleepTime;
    UINT32   EnergyConsumed;
} __attribute__((packed)) MIB_TABLE_ENERGY_CONSUMPTION_PM_HISTORY_DATA_T;


#endif
